package com.sakura.taos.tool.manipulator.model;

import lombok.Data;

/**
 * 数据库中的库对象(类似Oracle中的表空间)
 *
 * @Author: Sakura
 * @Date: 2021/1/31
 */
@Data
public class DataBase {
    /**
     * 库名称
     */
    private String name;
    /**
     * 一个数据文件存储数据的时间跨度，单位为天，默认值：10。
     */
    private Integer days;
    /**
     * //数据库中数据保留的天数，单位为天，默认值：3650。
     */
    private Integer keep;
    /**
     *  文件块中记录的最小条数，单位为条，默认值: 100。
     */
    private Integer minRows;
    /**
     * //文件块中记录的最大条数，单位为条，默认值：4096。
     */
    private Integer maxRows;
    /**
     * // 文件压缩标志位，0;  //关闭，1:一阶段压缩，2:两阶段压缩。默认值：2。
     */
    private Integer comp;
    /**
     *  //WAL级别。1：写wal, 但不执行fsync; 2：写wal, 而且执行fsync。默认值：1。
     */
    private Integer walLevel;
    /**
     * //当wal设置为2时，执行fsync的周期。设置为0，表示每次写入，立即执行fsync。单位为毫秒，默认值：3000。
     */
    private Integer fsync;
    /**
     *  内存块的大小，单位为兆字节（MB），默认值：16。
     */
    private Integer cache;
    /**
     * //每个VNODE（TSDB）中有多少cache大小的内存块。因此一个VNODE的用的内存大小粗略为（cache * blocks）。单位为块，默认值：4。
     */
    private Integer blocks;
    /**
     *  //副本个数，取值范围：1-3。单位为个，默认值：1
     */
    private Integer replica;
    /**
     * //时间戳精度标识，ms表示毫秒，us表示微秒。默认值：ms
     */
    private String precision;
    /**
     * 时候允许更新操作
     */
    private Integer update ;
}
